package com.ruoyi.ring.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class SleepInfoDTO {
    /** 设备sn */
    private String deviceSn;

    /** 睡眠索引 */
    @JsonProperty("id")
    private Integer sleepId;

    /** 睡眠类型 字典，ring_sleep_type */
    @JsonProperty("type")
    private String sleepType;

    /** 开始时间 */
    @JsonFormat(pattern = "EEE MMM dd HH:mm:ss zzz yyyy", locale = "en_US", timezone = "GMT+08:00")
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startDate;

    /** 结束时间 */
    @JsonFormat(pattern = "EEE MMM dd HH:mm:ss zzz yyyy", locale = "en_US", timezone = "GMT+08:00")
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endDate;

    /** 睡眠时间 */
    private Integer sleepTime;

    /** 睡眠效率 */
    private Integer sleepEfficiency;

    /** 睡眠得分 */
    @JsonProperty("score")
    private Integer sleepScore;

    /** 计算日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dailyValue;

    /** 深睡眠时间 */
    private Integer deepTime;

    /** 浅睡眠时间 */
    private Integer lightTime;

    /** 清醒时间 */
    private Integer awakeTime;

    /** 快速眼动 */
    private Integer remTime;

    private int[] rawBytes;

    /** 睡眠总时长 */
    private Integer totalTime;
    /** 状态 */
    private String state;

    /** 睡眠时类型 */
    private String sleepChronotype;

    /** $column.columnComment */
    private String highConfidence;

    /** 就寝时间 */
    private Integer bedtime;
    /**
     * 睡眠详细集合
     */
    private List<SleepDetailDTO> details;
}
